home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / dgeqp3.z / dgeqp3
Encoding:
Text File  |  2002-10-03  |  4.7 KB  |  133 lines

  1.  
  2.  
  3.  
  4. DDDDGGGGEEEEQQQQPPPP3333((((3333SSSS))))                                                          DDDDGGGGEEEEQQQQPPPP3333((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DGEQP3 - compute a QR factorization with column pivoting of a matrix A
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      SUBROUTINE DGEQP3( M, N, A, LDA, JPVT, TAU, WORK, LWORK, INFO )
  13.  
  14.          INTEGER        INFO, LDA, LWORK, M, N
  15.  
  16.          INTEGER        JPVT( * )
  17.  
  18.          DOUBLE         PRECISION A( LDA, * ), TAU( * ), WORK( * )
  19.  
  20. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  21.      These routines are part of the SCSL Scientific Library and can be loaded
  22.      using either the -lscs or the -lscs_mp option.  The -lscs_mp option
  23.      directs the linker to use the multi-processor version of the library.
  24.  
  25.      When linking to SCSL with -lscs or -lscs_mp, the default integer size is
  26.      4 bytes (32 bits). Another version of SCSL is available in which integers
  27.      are 8 bytes (64 bits).  This version allows the user access to larger
  28.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  29.      by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
  30.      only one of the two versions; 4-byte integer and 8-byte integer library
  31.      calls cannot be mixed.
  32.  
  33. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  34.      DGEQP3 computes a QR factorization with column pivoting of a matrix A:
  35.      A*P = Q*R using Level 3 BLAS.
  36.  
  37. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  38.      M       (input) INTEGER
  39.              The number of rows of the matrix A. M >= 0.
  40.  
  41.      N       (input) INTEGER
  42.              The number of columns of the matrix A.  N >= 0.
  43.  
  44.      A       (input/output) DOUBLE PRECISION array, dimension (LDA,N)
  45.              On entry, the M-by-N matrix A.  On exit, the upper triangle of
  46.              the array contains the min(M,N)-by-N upper trapezoidal matrix R;
  47.              the elements below the diagonal, together with the array TAU,
  48.              represent the orthogonal matrix Q as a product of min(M,N)
  49.              elementary reflectors.
  50.  
  51.      LDA     (input) INTEGER
  52.              The leading dimension of the array A. LDA >= max(1,M).
  53.  
  54.      JPVT    (input/output) INTEGER array, dimension (N)
  55.              On entry, if JPVT(J).ne.0, the J-th column of A is permuted to
  56.              the front of A*P (a leading column); if JPVT(J)=0, the J-th
  57.              column of A is a free column.  On exit, if JPVT(J)=K, then the
  58.              J-th column of A*P was the the K-th column of A.
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DDDDGGGGEEEEQQQQPPPP3333((((3333SSSS))))                                                          DDDDGGGGEEEEQQQQPPPP3333((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      TAU     (output) DOUBLE PRECISION array, dimension (min(M,N))
  75.              The scalar factors of the elementary reflectors.
  76.  
  77.      WORK    (workspace/output) DOUBLE PRECISION array, dimension (LWORK)
  78.              On exit, if INFO=0, WORK(1) returns the optimal LWORK.
  79.  
  80.      LWORK   (input) INTEGER
  81.              The dimension of the array WORK. LWORK >= 3*N+1.  For optimal
  82.              performance LWORK >= 2*N+( N+1 )*NB, where NB is the optimal
  83.              blocksize.
  84.  
  85.              If LWORK = -1, then a workspace query is assumed; the routine
  86.              only calculates the optimal size of the WORK array, returns this
  87.              value as the first entry of the WORK array, and no error message
  88.              related to LWORK is issued by XERBLA.
  89.  
  90.      INFO    (output) INTEGER
  91.              = 0: successful exit.
  92.              < 0: if INFO = -i, the i-th argument had an illegal value.
  93.  
  94. FFFFUUUURRRRTTTTHHHHEEEERRRR DDDDEEEETTTTAAAAIIIILLLLSSSS
  95.      The matrix Q is represented as a product of elementary reflectors
  96.  
  97.         Q = H(1) H(2) . . . H(k), where k = min(m,n).
  98.  
  99.      Each H(i) has the form
  100.  
  101.         H(i) = I - tau * v * v'
  102.  
  103.      where tau is a real/complex scalar, and v is a real/complex vector with
  104.      v(1:i-1) = 0 and v(i) = 1; v(i+1:m) is stored on exit in A(i+1:m,i), and
  105.      tau in TAU(i).
  106.  
  107.      Based on contributions by
  108.        G. Quintana-Orti, Depto. de Informatica, Universidad Jaime I, Spain
  109.        X. Sun, Computer Science Dept., Duke University, USA
  110.  
  111.  
  112. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  113.      INTRO_LAPACK(3S), INTRO_SCSL(3S)
  114.  
  115.      This man page is available only online.
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.